Universal Serial Bus (USB) technology is widely utilized to facilitate high-speed communications between host computing devices and corresponding peripheral computing devices (i.e., USB devices). More specifically, USB technology allows a particular host computing device to send data to, and receive data from, a wide variety of USB devices by providing high-speed data channels between the host computing device and each USB device. The input and output data that are sent through these data channels often include user-sensitive, confidential information. For example, a fingerprint reader (USB device) may send user identification credentials (input data) to a computer (host computing device) to gain access to a particular secure application on the computer, such as a bank account application. The security of such input data is clearly of high importance, since the illegal or unauthorized use of such data could lead to identity theft or fraud, for example. However, despite the sensitivity of such data and the significant risk that such data will be stolen, such data are commonly transmitted through unsecure data channels. This exposes the data to various threats, such as spyware, malware, viruses, and the like.
Current solutions to this problem rely on the inclusion of specialized technology within each USB device. As a result, such solutions are typically only used in security-focused environments by those who are willing to spend extra money for high-end USB devices.
The same numbers are used throughout the disclosure and the figures to reference like components and features. Numbers in the 100 series refer to features originally found in FIG. 1; numbers in the 200 series refer to features originally found in FIG. 2; and so on.